Skip to content

Expand and enhance native-multi-image test - #356

Merged
bonachea merged 23 commits into
BerkeleyLab:mainfrom
bonachea:ci-native-alloc
Aug 19, 2026
Merged

Expand and enhance native-multi-image test#356
bonachea merged 23 commits into
BerkeleyLab:mainfrom
bonachea:ci-native-alloc

Conversation

@bonachea

@bonachea bonachea commented Aug 4, 2026

Copy link
Copy Markdown
Member

Deploys numerous long-overdue improvements to native-multi-image test, see commit messages for individual improvements.

Highlights:

  1. Expands the set of feature parameterization knobs, changing all features to be on by default
  2. Adds runtime validation of many behaviors that were previously invoked but not verified
  3. Adds stand-alone (Caffeine-free) test mode and deploys into CI with GFortran-16
  4. Adds support for stand-alone test mode with NAG 7.2, and fixes a number of conformance defects it discovered
  5. Adds coverage for allocatable coarrays in the main program, Support allocatable coarrays and simplify coarray index representation lfortran/lfortran#12317
  6. Adds coverage for TEAM= arguments to image queries, fixed in [flang][MIF] Fix team_type usage in all MIF operations #205953 llvm/llvm-project#214207
  7. Adds lfortran-latest coverage for Add support for change team and end team lfortran/lfortran#12389
  8. Fixes a barrier mismatch defect in the HAVE_{MODULE,SAVE}_COARRAY dating back to 65d6173

UPDATE 2026-8-10:

  1. Adds a new program to factor the native test flag computation
  2. Applies that program to factor settings for CI and stand-alone mode
  3. Adds stand-alone mode for CCE and Intel
  4. Adjusts flang-latest coverage to leverage fixes in [flang][MIF] Update prif_coarray_handle in accordance with PRIF 0.8 #214080 llvm/llvm-project#214747 and [flang][MIF] Fix team_type usage in all MIF operations #205953 llvm/llvm-project#214207
  5. Adds lfortran-latest coverage for Implement coshape intrinsic lfortran/lfortran#12475
  6. Workaround Compiler crash on unused team_type variable lfortran/lfortran#12538
  7. Workaround [flang] Crash with coarray teams llvm/llvm-project#171048 for affected versions
  8. Remove workaround for [flang][mif] Ucobounds not properly allocated for corank > 1 llvm/llvm-project#207858 , a defect which was never visible in a flang release

@bonachea

Copy link
Copy Markdown
Member Author

rebased onto main to pick up a critical CI fix

@bonachea
bonachea force-pushed the ci-native-alloc branch 3 times, most recently from 579f98e to 6fc1e06 Compare August 12, 2026 18:55
@rouson

rouson commented Aug 13, 2026

Copy link
Copy Markdown
Collaborator

That's quite an impressive lost of items completed. Nice job @bonachea!

Add testing of allocatable coarrays in the main program

Add new HAVE_ALLOC_COARRAY_CLEANUP flag to control auto-deallocation
of allocatable coarrays at scope exit

Add new HAVE_ALLOC_COARRAY_DEALLOC flag to control explicit deallocation
of allocatable coarrays

Factor old CHECK_ALLOC macro into more generic CHECK_VALL macro

Update CI settings accordingly
Add NAG stand-alone support to check for non-conforming vendor extensions,
and fix a few such issues to ensure strict standards conformance.

Add Gfortran stand-alone support, and a Makefile to drive both.

Fix a critical barrier mismatch defect in test_module_coarray and test_save_extern_coarray

Minor cosmetic cleanups
Enable HAVE_COARRAY by default, so that all multi-image features
are enabled by default with HAVE_MULTI_IMAGE.

Also deploy forward-looking HAVE_LOCK and HAVE_NOTIFY knobs that
default to HAVE_COARRAY and control the relevant type.

Adjust CI settings accordingly.
Replace/augment unchecked console output with programmatic checks
Coverage for:
* THIS_IMAGE(TEAM=)
* NUM_IMAGES(TEAM=)
* TEAM_NUMBER(TEAM=)
lfortran#12370 + lfortran#12371 were fixed in lfortran/lfortran#12405,
merged after release 0.64
This is to allow print-native-flags.F90 to live in the app/
directory, without it being slurped in by `fpm run` as a target
This includes fixes to LLVM issues 214080 and 205953

@ktras ktras left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have suggested some minor changes, but looks great otherwise.

Comment thread app/print-native-flags.F90 Outdated
Comment thread app/native-multi-image.F90
Comment thread app/print-native-flags.F90 Outdated
Comment thread app/print-native-flags.F90 Outdated
Comment thread app/print-native-flags.F90 Outdated
Co-authored-by: Katherine Rasmussen <krasmussen@lbl.gov>
@bonachea
bonachea requested a review from ktras August 19, 2026 19:57

@ktras ktras left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@bonachea
bonachea merged commit 341a507 into BerkeleyLab:main Aug 19, 2026
177 of 183 checks passed
@bonachea
bonachea deleted the ci-native-alloc branch August 19, 2026 22:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants